1. Field of the Invention
The present invention relates to an apparatus for controlling traffic in a packet network, and in particular, an apparatus for controlling traffic in a GFR (Guaranteed Frame Rate) service provided by an ATM (Asynchronous Transfer Mode) network.
2. Description of the Related Art
ATM has become popular as one of the core technologies used to support communications services, and research and development into it are promoted. ATM can integrate a variety of data by storing data, such as voice data, picture data, text data, etc., in a fixed-length packet called a xe2x80x9ccellxe2x80x9d and by transmitting the data.
FIG. 1 shows a configuration of an ATM network. An ATM network 500 usually contains a plurality of ATM switches which are connected with each other (ATM switches 510 through 530 in the drawing). Terminals are accommodated in arbitrary ATM switches.
When data are transmitted from a transmitting terminal 540 to a receiving terminal 550, the ATM network 500 first sets up a virtual path and a virtual channel for connecting these terminals. The transmitting terminal 540 stores data to be transmitted in one or more cells. Then, the transmitting terminal 540 sets a VPI/VCI (virtual path identifier/virtual channel identifier) corresponding to the virtual path and the virtual channel in the header of each cell, and transmits those cells to the ATM network 500. The ATM network 500 transfers the cells to the receiving terminal 550 based on the VPI/VCI which is set in the header of each cell. Then, the receiving terminal 550 extracts data which are stored in a received cell from the ATM network 500. In this way, in an ATM network, data are transmitted by being stored in a cell.
In ATM, each user usually can select a communication service by which data are transmitted. A service which each user is provided with, for example, is stipulated in a contract between a user and a common carrier. ATM forum defines CBR (Constant Bit Rate), rt-VBR (real time Variable Bit Rate), nrt-VBR (non-real time Variable Bit Rate), UBR (Unspecified Bit Rate) and ABR (Available Bit Rate) as service categories.
Each user declares in advance to the ATM network 500 communication parameters required in a selected service. For example, with the communication parameters, PCR (Peak Cell Rate) or SCR (Sustainable Cell Rate) is reported.
The ATM network is provided with a usage parameter control (UPC) device for monitoring and controlling traffic. As shown in FIG. 1, the UPC device 511 is provided at the entrance of the ATM network 500, and monitors, for each connection, the amount of cells flowing into the ATM network 500. Specifically, the UPC device 511 monitors a cell rate for each connection, and judges whether the cell rate exceeds a value which is declared in advance for the connection (for example, PCR). If the UPC device 511 detects a non-conforming cell, it discards the non-conforming cell or gives a low priority to the non-conforming cell. xe2x80x9cA non-conforming cellxe2x80x9d is a cell which arrives in a cell rate higher than a declared value or a cell which arrives before an expected time which is determined by a declared value (arrival interval and some other parameters) and an arrival timing of immediately previous cell. Giving a low priority to a cell is called xe2x80x9ctaggingxe2x80x9d. In the ATM network 500, cells with low priority are discarded when congested.
The operation algorithm of the UPC device is defined by ITU-T. Currently either a leaky bucket algorithm or a virtual scheduling algorithm is adopted. These two algorithms substantially define the same operation. With these algorithms, basically the arrival interval of cells for each connection is monitored, and whether the arrival interval deviates from a declared value corresponding to the connection is determined.
In this way, the ATM network 500 controls traffic for each connection using the UPC device 511.
Currently in ATM forum, the standardization work of GFR (Guaranteed Frame Rate), which is an improved system of a UBR, is promoted. In a GFR service, a frame specified by AAL5 (ATM adaptation layer 5) is used.
A frame conforming to the AAL5 is transmitted stored in an ATM cell via an ATM network. FIG. 2 shows how to store an AAL5 frame in a cell. The AAL5 layer is composed of a convergence sublayer (CS) and a segmentation and reassembly sublayer (SAR). User data to be transferred are generated in a layer higher in order than the AAL, and stored in a CPCS-PDU of the frame in the CS. A frame conforming to the CS is divided into every 48 bytes. Each SAR-PDU is stored in the payload of each ATM cell.
In the GFR service, the Peak cell rate PCR and the minimum cell rate MCR are declared in advance for each connection. Then, as shown in FIG. 3A, when the network is not congested, the ATM network provides a band corresponding to the declared peak cell rate PCR for a corresponding connection. In this case, if a transfer rate at a connection exceeds the declared peak cell rate PCR, a non-conforming cell is discarded. If the network is congested, as shown in FIG. 3B, the declared minimum cell rate MCR is guaranteed. However, if the transfer rate at the connection exceeds the minimum cell rate MCR, a non-conforming cell is discarded or a low priority is given to the non-conforming cell.
Traffic control in the GFR service is basically executed by the UPC device, as in other services. That is to say, the arrival interval of cells is monitored for each connection using the UPC device, and if a non-conforming cell is detected, the non-conforming cell is discarded, etc.
As described above, in the GFR service, an AAL 5 frame is used. However, if a conventional UPC device detects a non-conforming cell, it discards the non-conforming cell, etc. without taking the AAL5 frame into consideration. For this reason, there is a possibility that a condition unfavorable for providing a GFR service may occur.
For example, if an AAL5 frame is transmitted after divided and stored in a plurality of cells, the AAL5 frame cannot be reproduced at a receiving terminal when a part of the cells is discarded, even in the case where the average transfer rate of a plurality of the cells is below a declared value.
When an AAL5 frame is transmitted after divided and stored in a plurality of cells, the receiving terminal assembles a transmitted AAL5 frame by recognizing the head and end portions of the frame. Therefore, if a cell storing the end portion of a first frame is discarded when the first frame and a second frame are transmitted in succession, the receiving terminal recognizes a data sequence from the head portion of the first frame to the end portion of the second frame as one frame, and attempts to reproduce a frame from it. In this case, as a matter of fact, the first and second frames cannot be correctly reproduced. In this case, although no xe2x80x9cnon-conformityxe2x80x9d occurs in the second frame, the receiving terminal cannot extract user data from the second frame.
As described above, in a conventional ATM system, when traffic is controlled for each connection, a data frame conforming to a layer higher in order than an ATM layer cannot be taken into consideration.
The object of the present invention is to provide an apparatus for controlling traffic in a network where packets are transmitted, taking a frame of a layer higher in order than a layer which specifies the packet into consideration.
The traffic control apparatus of the present invention is configured so as to control the traffic of a packet in a network where packets are transmitted, and comprises the following units.
A judgment unit judges whether or not the interval between packets conforms to a predetermined parameter, and generates a non-conformity notice if the interval does not conform to the parameter. When a non-conformity notice is generated by the judgement unit for a packet in which one of a plurality of data sets obtained by dividing frame data is stored, a determination unit judges whether or not to generate the non-conformity notice for a packet in which other data set obtained from the frame data is stored based on a position in the frame data of the data set stored in the packet for which the non-conformity notice is generated. A process unit discards a packet for which the non-conformity notice is generated or sets a low priority to the packet for which the non-conformity notice is generated.
When frame data are transmitted through the packet network, the frame data are divided into a plurality of data sets, and each data set is stored in a different packet. Then, a receiving terminal extracts the data set from a plurality of packets, and assembles the frame data. Therefore, if one or more of the packets in which a plurality of data sets are stored are discarded, the receiving terminal cannot assemble the frame data.
In order to cope with this problem, the traffic control apparatus of the present invention processes packets taking frame data into consideration. Thus, if a packet in which one of a plurality of data sets obtained from a certain piece of frame data is discarded, the determination unit generates an instruction to discard packets in which other data sets obtained from the frame data are stored, etc.
For example, if a packet in which the top portion (beginning portion) of the frame data is discarded, the determination unit generates non-conformity notices for all packets in which other data sets obtained from the frame data are stored. Since as described above, all packets related to the frame data are prevented from being transmitted or discarded when the network is congested, the waste of network resources can be suppressed.
If a packet in which the middle portion of frame data is discarded, the determination unit generates a non-conformity notice for packets following the discarded packet among packets in which other data sets obtained from the frame data are stored. In this case, the waste of network resources can also be suppressed for the same reason.